1. Field of the Invention
This invention relates to maintaining clock time in a computer system, and more particularly to maintaining time in partitions of a multiprocessor computer system.
2. Background Information
A central processor in a computer system ordinarily maintains a time of year clock. This clock usually maintains time with a resolution of one second. In a multiprocessor system the clocks of the various processors should be synchronized. A standard engineering practice has been to divide the multiprocessor system into partitions, and to place a hardware clock card in each partition. The hardware clock card has a time of year chip which determines the time for that particular partition. The arrangement of a time of year card with a time of year chip for each partition ties a partition to that particular computer card.
It is desirable to be able to rearrange partitions in a multiprocessor computer system under software control. However, any rearrangement of partitions are restricted so that a partition must retain the single hardware card with the time of year clock. This restriction is limiting, and a better solution for partition time of year service is needed.
The processors of a multiprocessor system are managed, or controlled, by a microprocessors referred to as MBM microprocessors, and the input/output units of the multiprocessor system are managed or controlled by microprocessors contained in PBM units. The MBM units and PBM units communicate with each other through a private local area network. The processors may be arranged into partitions by software, where the processors of a partition may exchange messages with each other, but not with other processors of the multiprocessor system.
The invention is a virtual time of year clock which synchronizes the microprocessors of the MBM and PBM units within a partition to form a xe2x80x9cbase timexe2x80x9d. In the event that the operating system of a partition changes the time within that partition, a xe2x80x9cdelta timexe2x80x9d is computed such that the base time plus the delta time gives the set time. The delta time is stored in a database which is replicated within all MBM and PBM microprocessors. A processor determines its current time by reading a register in which current time is written as partition base time plus partition delta time. An advantage of replicating the delta time of each partition in all MBM units is that all processors are then able to determine the xe2x80x9ccurrent timexe2x80x9d of any other processor in the multiprocessor computer system, regardless of which partition the processor is in.